package com.angular.useradmin.user.service;

import com.angular.useradmin.user.entity.New;
import com.angular.useradmin.user.entity.vo.FiledArrays;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author 许根银
 * @since 2023-01-05
 */
public interface NewService extends IService<New> {
    /**
     * 表复制
     *
     * @return
     */
    boolean copyTable();

    /**
     * 获取所有数据
     *
     * @return
     */
    List<Map<String, Object>> getQueryData();

    /**
     * 获取所有表名
     *
     * @return
     */
    String[] getAllTableName();

    /**
     * 获取所有字段名
     * @return
     */
    String[] getAllFieldName (String tableName);
    /**
     * 获取所有值
     * @return
     */
    Map<String, Object>  getAllValue(String tableName, int current, int limit);


    /**
     * @param filedArrays tableMaster    A表字段名数组
     *                    tableNew       B表字段名数组
     *                    queryTableName 数据源表名
     *                    newTableName   插入数据的表名
     *                    默认，如果存在事务，则支持当前事务；不存在，则开启一个新事务
     *                    事务被处理为顺序执行
     * @return
     */
    boolean translate(FiledArrays filedArrays);
}
